package com.beehoo.dcportal.admin.service;

import java.util.List;

import com.beehoo.dcportal.common.base.BaseException;
import com.beehoo.dcportal.model.MessageBean;
import com.beehoo.dcportal.model.RejectBean;

public interface MessageService {

	/**
	 * 创建信息
	 * 
	 * @param messageBean
	 * @return
	 * @throws BaseException
	 */
	public String createMessage(MessageBean messageBean) throws BaseException;

	/**
	 * 查询信息列表
	 * 
	 * @param streetId
	 * @param msgState
	 * @param beginDate
	 * @param endDate
	 * @param pageNo
	 * @param pageRows
	 * @return
	 * @throws BaseException
	 */
	public List<MessageBean> queryMessageForList(String streetId,
			String msgState,String type, String subType, String beginDate, String endDate, int pageNo,
			int pageRows) throws BaseException;

	/**
	 * 查询信息列表总数
	 * 
	 * @param streetId
	 * @param msgState
	 * @param beginDate
	 * @param endDate
	 * @return
	 * @throws BaseException
	 */
	public int queryMessageCount(String streetId, String msgState,String type, String subType,
			String beginDate, String endDate) throws BaseException;

	/**
	 * 查询信息详细
	 * 
	 * @param streetId
	 * @param msgId
	 * @param msgState
	 * @return
	 * @throws BaseException
	 */
	public MessageBean queryMessageDetail(String streetId, String msgId,
			String msgState) throws BaseException;

	/**
	 * 更新信息
	 * 
	 * @param messageBean
	 * @return
	 * @throws BaseException
	 */
	public void updateMessage(MessageBean messageBean) throws BaseException;

	/**
	 * 删除信息
	 * 
	 * @param msgId
	 * @return
	 * @throws BaseException
	 */
	public void delMessage(String msgId) throws BaseException;

	/**
	 * 信息审核
	 * 
	 * @param messageBean
	 * @param rejectBean
	 * @throws BaseException
	 */
	public void auditMessage(MessageBean messageBean, String reason)
			throws BaseException;

	/**
	 * 处理上传图片
	 * 
	 * @param filedata
	 * @throws BaseException
	 */
	public String uploadFile(MessageBean messageBean) throws BaseException;
	
	/**
	 * 查询驳回原因
	 * @param msgId
	 * @return
	 * @throws BaseException
	 */
	public List<RejectBean> queryRejects(String msgId) throws BaseException;
}
